Entities typically generate and use data that is important in some way to their operations. This data can include, for example, business data, financial data, and personnel data. If this data were lost or compromised, the entity may realize significant adverse financial and other consequences. Accordingly, entities typically back up their important data so as to create a backup that can later be used in a data restore process if necessary.
A variety of backup and archive systems have been developed for use in the reliable retention of data. While such systems have generally proven effective, they nonetheless suffer from various shortcomings, some of which relate to the file system, and particularly, the file system namespace. In particular, in some storage systems, a directory manager acts as the repository for the file system namespace. As such, the directory manager relies on deduplication and storage mechanisms in other layers of the storage system to persist the namespace in a physical storage layer. As well, when it comes to providing namespace services like file creation and file look up for upper layers such as the file system, the directory manager may likewise rely on the same underlying layers. As a result of arrangements such as that just described, the directory manager must contend for resources, such as input/output operations per second (IOPs) and memory, with the rest of the services involving the file system, where such services include data ingestion and garbage collection for example.
In view of problems such as those noted above, it would be useful to be able to carry out the necessary namespace operations without requiring resort to lower layers, such as hard disk storage, in the storage system.